package com.wc.alorithm_luogu.P1067;

import java.util.Scanner;

/**
 * @Author congge
 * @Date 2023/4/26 11:54
 * @description https://www.luogu.com.cn/problem/P1067
 * 多项式输出
 */
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        n = n + 1;
        // 每一个位置上面都记录当前位置的系数
        int[] formulas = new int[n];
        for (int i = n - 1; i >= 0; i--) {
            int formula = sc.nextInt();
            formulas[i] = formula;
        }

        // 存储答案
        StringBuilder str = new StringBuilder();

        for (int i = n - 1; i > 0; i--) {
            // 如果==0 就不需要记录输出了
            if (formulas[i] != 0) {
                // 大于0 要添加+号
                if (formulas[i] > 0) {
                    str.append('+');
                }
                // 等于1或者-1时候 1 不要显示
                if (formulas[i] == -1) {
                    str.append('-');
                } else if (formulas[i] != 1) {
                    str.append(formulas[i]);
                }
                // 如果是x 1次方不需要^
                if (i == 1) {
                    str.append("x");
                } else {
                    str.append("x^");
                    str.append(i);
                }
            }
        }

        // 最后一个位置是没有x参数的
        if (formulas[0] != 0) {
            if (formulas[0] > 0) {
                str.append('+');
            }
            str.append(formulas[0]);
        }

        // 只有一个0
        if (str.length() == 0) {
            str.append(0);
        }
        // 去除第一个 ＋ 号
        if (str.charAt(0) == '+') {
            str.replace(0, 1, "");
        }

        System.out.println(str);
    }
}
